// Project: EnumDataSourceControl, File: EnumValueInfo.cs
// Namespace: Salient.Web.UI.WebControls, Class: EnumValueInfo
// Author: Sky Sanders (sky.sanders@gmail.com)

// Creation date: 10/15/2008 8:24 PM
// Last modified: 10/16/2008 7:20 AM


#region Using directives
using System;
#endregion
/// <summary>
/// Salient. web. UI. web controls
/// </summary>
namespace Salient.Web.UI.WebControls
{
    /// <summary>
    /// Represents an enumerated value
    /// </summary>
    public class EnumValueInfo
    {
        /// <summary>
        /// The typed enum value.
        /// </summary>
        public Enum EnumValue { get; set; } // EnumValue

        /// <summary>
        /// Contents of optional System.ComponentModel.DescriptionAttribute.
        /// If Description is not present, value is same as name.
        /// </summary>
        public string Description { get; set; } // Description

        /// <summary>
        /// Integral value of described enum value. 
        /// Will be byte,int,short or long.
        /// </summary>
        public object IntegralValue { get; set; } // IntegralValue

        /// <summary>
        /// The name constant e.g. Enum.GetName()
        /// </summary>
        public string Name { get; set; } // Name

    } // class EnumValueInfo

} // namespace Salient.Web.UI.WebControls
